Multi-services gateway device at user premises

ABSTRACT

An application gateway including application service programming positioned at a user premises can provide voice controlled and managed services to a user and one or more endpoint devices associated with the application gateway. The application gateway can be controlled remotely by the application service provider through a service management center and configured to execute an application service provided from the application service provider. The application gateway can execute the application service at the user premises upon voice command by a user and independent of application services executing on the application service provider&#39;s network. An application service logic manager can communicate with an application service enforcement manager to verify that the request conforms with the policy and usage rules associated with the application service in order to authorize execution of the application service on the application gateway, either directly or through endpoint devices.

RELATED APPLICATIONS

This application is a Continuation of U.S. application Ser. No.14/633,449, filed Feb. 27, 2015, entitled “MULTI-SERVICES GATEWAY DEVICEAT USER PREMISES,” which is a continuation of U.S. application Ser. No.13/618,238, filed Sep. 14, 2012, entitled “DEMARCATION BETWEEN SERVICEPROVIDER AND USER IN MULTI-SERVICES GATEWAY DEVICE AT USER PREMISES,”which is a continuation of U.S. application Ser. No. 12/521,763, filedApr. 23, 2010, entitled “DEMARCATION BETWEEN SERVICE PROVIDER AND USERIN MULTI-SERVICES GATEWAY DEVICE AT USER PREMISES,” which is a UnitedStates national phase application of co-pending internationalapplication Number PCT/US2007/019543 filed Sep. 7, 2007, which claimsthe benefit of U.S. Provisional Application No. 60/882,865, filed Dec.29, 2006 and of U.S. Provisional Application No. 60/882,862, filed Dec.29, 2006, the disclosures of which are incorporated herein by reference.

TECHNICAL FIELD

The present subject matter relates to gateway devices and/or programmingfor such devices that provide application services for a user premisesand for associated endpoint devices, wherein to facilitate management ofthe application services, wherein service access if provided to a uservia voice commands.

BACKGROUND

The digital home is now becoming more complex with the myriad of new andemerging digital devices intended to address many user and consumerneeds such as communication, entertainment, privacy and security, etc.However, given the complexity of the emerging digital home and digitalenvironments generally, users who are technologically challenged mayfind it a daunting and intimidating task to manage their home networksand interconnected digital devices. Moreover, new paradigms are emergingoriented to delivering media content to and the consuming of mediacontent at the home. Many of these paradigms rely on communication ofapplication specific data to and/or from the Internet, as opposed toconventional telephone or broadcast video type applications. Theprotection of received Internet-sourced media content in addition touser-generated media content is additionally an important aspect thatmay be inadequately addressed by the technologically challenged user.Furthermore, with respect to Internet based data, most of the contentdelivery solutions are provided to the digital home networks throughavailability of the “two-foot” interface (i.e. the PC). It is relativelycumbersome to bring this content to the “ten-foot” interface (e.g. thetelevision).

Thus, a need exists for a technique or devices to simplify the overallmanagement of services and applications available to the digital home oreven the small enterprise. Such a technique or devices would reduce thecomplexity of the maintenance, upgrading, and operation of even the morebasic needs addressed by emerging digital endpoint devices and networks.Approaches that suggest greater functionality in home-based appliancesfail to reduce or address the complexity of managing and provisioningthose appliances. For example, while the home gateway server appliancedescribed in U.S. Pat. No. 6,930,598 enables networked electronicdevices to communicate with each other without the direct interactionwith external networks, and provides a mechanism whereby a member of thehousehold may be informed of certain network related events withouthaving to use their home computer or other client devices, it does notprovide a convenient or simplified way of managing the services andapplications executed by, or associated with, that device. Thus, anunmet need exists for a device associated with a user premises that hasrobust functionality but does not require sophisticated or inordinateattention from the user to manage, provision, and utilize them.

In practice, a customer typically subscribes to basic transport servicesfrom a network “Service Provider” (e.g. ISP-Internet Service Provider,cable provider, fixed wireless providers, ILEC—Incumbent Local ExchangeCarrier, or CLEC—Competitive Local Exchange Carrier). For example, acustomer may have broadband Internet access, via cable modem, digitalsubscriber line service or the like. Digital video service may beprovided separately. The network service provider manages these basicservices, at the logical network layer, typically at layers 1, 2 or 3 ofthe OSI model. While network services and associated devices may operateminimally at those levels, they operate at those levels only to supportoperations at OSI layers 1, 2 or 3. Many applications, however, involvehigher level service logic for applications that view the networktransport as a transparent pipe. The current internet applicationsdelivery and management architecture, and many devices or managementsystems based on it, require a server with robust processing and storagecapability to be located at the network operations center, not in thehome. For voice over internet protocol (VoIP) type telephone service,for example, the VoIP service provider operates a session initiationprotocol (SIP) server or the like, and each user has only clientfunctionality. The network transport layers are transparent to the IPpackets containing the voice and related signaling. The SIP server,however, controls the call set-up, tear-down, billing and the like forthe voice call services. With such an architecture, the majorcapabilities and functionalities connected with providing applicationservices from the server throughout the network reside on the server andsupporting elements, all of which are located in the network operationscenter.

It might be helpful to walk through examples of the configuration forapplication services delivery to a client of an application within auser premises under the typical, current network configuration. FIG. 10depicts one possible configuration for a client application to access aparticular service that is being hosted or served outside of the userpremises based on the typical, and currently employed, networkapplication service configuration. We identify two regimes in theoverall architecture, the Service Provider Network regime (WAN side),and the User Premises Network regime (LAN side). The association betweenthe Service Provider Network and the User Premises Network is brokendown into three layers; Network Interconnect Layer (NI), NetworkFunction Layer (NF), and the Application Services Layer (AS). Theselayers do not represent physical communication pathways, but are alogical representation of pathways and elements employed in anetwork-based communication.

The separation between the managed Service Provider Network (WAN side)and the User Premises Network (LAN side) is depicted as the NetworkService Provider Demarcation. The Network Service Provider Demarcationat the Network Interconnect Layer represents the logical and physicalseparation between the user premises and the broad-band network. In thepresent representation of the three functional layers, the NetworkService Provider Demarcation is extended into the Services andApplication Layer to emphasize the functional barrier at that layerbetween the Service Provider Network and the User Premises Network, incurrently configured networks.

The NI Layer depicts how the connectivity between a User PremisesNetwork and the Public/Service Provider Network is established. On theService Provider Network side, the Wide Area Network services areterminated onto a WAN termination device with the appropriate interface(e.g. a Broadband internet service such as ADSL would terminate on to amanaged ADSL Terminal Adapter). The WAN termination layer adapts the WANinterface into a compatible LAN interface (e.g. Ethernet or WiFi). Onthe User Premises Network side the LAN Termination interfaces are usedto connect to the Local Area Network via a variety of interfaces, suchas Ethernet, WiFi, MOCA, etc.

The LAN Termination interfaces and the WAN Termination interface couldreside on two separate physical devices or they could reside on onephysical device. In either case, on the User Premises Network side,packets or data must flow through the NF Layer between the WANTermination Interface and the LAN Termination Interface. One or both ofthese interfaces may reside on a “gateway” device. Gateway and likerouter devices are currently available for various premises that allowseveral computers to communicate with one another and to share abroadband Internet connection. These devices function as routers bymatching local network addresses and the hostnames of the localcomputers with the actual networking hardware detected. As gateways,these devices translate local network addresses to those used by theInternet for outgoing communications, and do the opposite translationfor incoming packets.

The User Premises NF Layer allows for switching of packets between LANdevices and routing or bridging of packets between the LAN and WANinterfaces. It could physically reside on the same device(s) with theLAN Termination or it could exist at an independent device that couldinterconnect to the LAN Termination interface via a variety of physicalinterfaces (e.g. Ethernet, MOCA, etc.). The Service Provider NF Layerprovides the Wide Area Network access between the WAN Termination deviceand the AS Layer where all the applications servers are being hosted.The Internet could be used for this connectivity as could a privatepacket/cell network (e.g. Cellular packet network, or a private ATM orpacket backbone).

The AS Layer represents the functional layer that provides access toapplications services by application clients. On the User Premises side,the AS Layer provides a Firewall to protect the application client fromapplication level attacks from the open Internet. On the ServiceProvider side, the AS Layer encompasses application services such asParental Control, Backup, and Call Processing. These applicationservices exist on a managed Application Service Delivery Platform (ASD)on a secure network server that can be hosted at a facility that hasprivate and or public data connection paths. The ASD may include threefunctional modules, namely the Application Service Enforcement (ASE)module, the Application Service Logic (ASL) module, and the ApplicationService Management (ASM) module.

The ASE module is responsible for enforcing the relevant ApplicationClient privileges to the application services. It gets the policies andpermissions of each application client from the ASM module (such asprovisioning data and subscription data) and enforces those policiesagainst the requested actions by the client application.

The ASL module executes the application services that the ApplicationClients request. Such services could be Call Processing, ParentalControl, Peered Networking, Backup, etc. The ASL module must interactwith the ASM module for monitoring purposes and status information suchas Call Data Recording and Billing. It must also interact with the ASEmodule to provide access to the client applications that have passed thepolicy enforcement procedures.

The ASM module, as described above, provides the necessary data to theASE and ASL modules for them to carry out their respective functions. Italso oversees the overall integration and communication among all themodules and the services that are managed by the ASM. The ASM alsomanages the overall security and integrity of the ASD.

All ASD modules are in constant communication with each other,preferably through secure connections. The inter-module communicationmay be managed by the ASM, or may be independent of a central managementfunction. Note that the ASE, ASL and ASM modules are only examples offunctions that may be logically bundled; other bundles, and other meansof bundling these functions, are possible.

FIG. 11 depicts a logical flow of how a specific Application Clientresiding at a user premises could interact with an Application Servicethat is being managed in the typical network configuration.Traditionally, as depicted in this example, an Application Client (e.g.Telephony) that needs to connect to an Application Service (e.g. callprocessing) must first connect to the Local Area Network terminationinterface (1). Depending on the specific deployment, a switchingfunction, routing function or bridging function is used to establish theconnection path between the application client (2) and the Firewallservice (3). The Firewall Service works in conjunction with the routerfunction (4) to permit access to the Wide Area Network interface (5) andmaintain a level of security to the Application Client. The firewallservice in this example is not aware of either the type of applicationclient or the specific application service that is being targeted. Thereis no feedback mechanism between the Application Service DeliveryPlatform and the Firewall function. Once connectivity to the WANtermination interface is established, routing mechanisms are used toestablish a connection through the Service Provider Network FunctionLayer (6) to the Application Service Layer (7). At the ApplicationService Layer, the client application goes through applicationvalidation procedures and privilege and permission checks by the ASEprior to allowing the application client to connect to the desiredapplication service.

In the logical hierarchy, such as shown in FIGS. 10 and 11 , a homegateway device may implement the NI layer functions and the userpremises side NF layer functions. The firewall functionality may residein the gateway or in one or more other elements on the premises network.For example, many PCs internally implement firewalls, e.g. in closeassociation with the client programming of the endpoint device. As canbe seen by the illustrations in FIG. 11 , however, even with a homegateway deployment for a premises network, the application servicesfunctionality still requires the support and service logic to reside ona server in the network. That is, for service provisioning, servicemanagement and upgrades, remote diagnostics, for a digital endpointdevice such as a PC or SIP phone, the home premises still must rely onthe application service logic executed by the service providers in theirserver networks, typically according to proprietary platforms. Moreover,many other core services, e.g., file storage, media content access anddelivery, are offloaded to other 3rd-party service providers thatprovide service logic and support applications at their network serverdevices.

With the paradigm discussed above relative to FIGS. 10 and 11 , it iscurrently the case that many of the application service providers alsofind it difficult to provide and support new emerging technologies atthe home. That is, service providers are challenged to select a platformthat can evolve with their applications. With existing servicearchitectures, the launch of new services compounds complexity to thecore network, adding to both capital and operating expenditures.

Thus, as new services come to the fold, often with the requirement ofnew equipment, e.g. integrated access devices (IADs) for VoIP andset-top boxes for streaming video, the management of the customerpremises equipment (both hardware and software) complicates customersupport requirements. Managing the home network environment can be aninhibitor to the adoption of new services, both from the userperspective and from the perspective of management by the serviceproviders.

A need exists for a new paradigm, with improved convenience for the userand easier management for the application service provider. In thatregard, it would be desirable to provide a multi-services applicationgateway device that provides not only a variety of IP-basedcommunication services, but also offers a centralized managementcapability for application services.

SUMMARY

The technology discussed herein may be embodied in gateway devices,typically for deployment at user premises, and/or to programming fordevices that may function as such gateways. Such a gateway deviceincludes a first interface for enabling bi-directional communicationswithin the premises; a second interface for enabling bidirectionalcommunications extemal to the premises via a wide area network; avoice-based user interface enabling management and control ofapplication services executed by the gateway and at least one of theassociated endpoint device via voice commands from a user, and aprocessor coupled to the interfaces for execution of the programming toprovide a managed service for one or more endpoint devices associatedwith the gateway device. The gateway devices are implemented in such amanner as to offer users of endpoint devices one or more applicationservices and to implement logical demarcations.

An application gateway can include application service programminglogically positioned on a user premises side of a logical networkdemarcation forming an edge of the wide area network at a user premisesprovides managed services to at least one of a user and one or moreendpoint devices associated with the application gateway. Theapplication gateway can be controlled remotely by the applicationservice provider through a service management center and configured toexecute an application service provided from the application serviceprovider. The application gateway executes the application service atthe user premises independent of application services executing on theapplication service provider's network. An application service logicmanager can communicate with an application service enforcement managerto verify that the request conforms with the policy and usage rulesassociated with the application service in order to authorize executionof the application service on the application gateway, either directlyor through endpoint devices. A graphical user interface rendered on adisplay associated with at least one of the gateway and an endpointdevice for enabling management and control of application servicesexecuted by the application gateway.

An application gateway can enable multiple services including: homeautomation of connected devices within the user premises; home securityof the user premises via connected devices within the user premises;management of video cameras and associated video data captured withinthe user premises; management of sensors located at or within the userpremises; management of monitors at or within the user premises; homeautomation of connected devices within the user premises; management,including monitoring, of medical devices within the user premises;management of wired and wireless connections to endpoint devices at orwithin the user premises; management of digital rights utilized byendpoint devices at or within the user premises; management of contextsensitive advertising that is available for rendering on endpointdevices at or within the user premises.

In a disclosed example, the demarcation in accessibility to hardwareresources of the gateway device, provided by the logical serviceprovider-user demarcation, delineates a portion of the storageaccessible by a user via an endpoint device from an application serviceprovider portion of the storage, which contains the application serviceprogramming and/or data of the application service provider. Forexample, the user of an associated endpoint device may be able to storeand retrieve data files in the user accessible portion of the storage ofthe gateway device. The application service provider, in turn, cancontrol storage and retrieval of data files in the application serviceprovider space portion via the wide area network. However, the user ofthe associated endpoint device is prevented from accessing one or moreof the data files in the application service provider portion. In oneservice application, the application service provider can allow storageand retrieval of data files in the application service provider portionvia the wide area network, for other gateway devices. In a specificexample, the logical location of the demarcation line separating theportions of the storage is controllable by the application serviceprovider, from the service management center, via the wide area networkand the second interface.

The programming for example may implement a number of applicationservices. For each application service, execution of the programmingcauses the gateway device to provide functions in relation to arespective service for one or more of the associated endpoint devices.The functions of such an application service include application servercommunication with a client functionality of one or more endpointdevices, for the respective service, communicated on top of networklayer communications through one or both of the interfaces. Theapplication service logic on the user premises side may also enforceauthorization, authentication, configuration, or use of the respectiveservice via an endpoint device. However, management of the applicationservice is based upon the communications with the service managementcenter, via the wide area network, through the second interface.

Although based on a Client-Server architecture, the exemplary gatewaydevices and service management center move substantial functionsperformed by the typical network server into the user premises byincorporating those functions into the gateway device, but in a way thatallows for the server functionality to be externally managed by theservice management center, which may be operated by a third-partyservice provider. Moreover, the server functionality residing in thegateway device is not only located in the premises but it now resides onthe premises side of the Network Service Provider Demarcation. Thisapproach in the examples does not just move server functionality fromthe servers in the network operations center, where they were previouslylocated, to the home; but it also moves the logical position of theexecution of application services logic of the server to the userpremises side of the Network Service Provider Demarcation and provideslogical hooks to enable the external service manager to perform itsfunction(s) on that side of the demarcation. For example, applicationservices related to the use of one or more endpoint devices can now beprovisioned, serviced, and managed on the user premises side of theNetwork Service Provider Demarcation, albeit by an external servicemanagement center operated by a third-party service provider. Theapplication software architecture, coupled with the specific managedhardware implementation at the user premises, enables a single serviceprovider to provide the network services, whereas one or moreapplication services providers (possibly including the network serviceprovider) can provide the applications services to the customerindependently of providing the network service.

The illustrated architecture also manages the utilization of network andtransport resources in the use and execution of application services inthe premises. Because appreciable functionality now resides in thegateway device, and many application services may now be located andexecuted at or through it, with a concomitant demand on premisesresources, the utilization of resources in the application or executionof application services may need to be coordinated. For example, if oneor more application services are invoked at the user premises and theseapplication services utilize resources (e.g. CPU, WAN bandwidth, LANbandwidth, memory), an application service may compete for resourceswith either basic network service usage activities (downloading filesfrom the internet, etc.) or other application services. The architectureprovides for “managed application services” functions at the gatewaydevice that monitor resource demand and usage, according to policies andpriorities for management set by the service management center,allocating resources to application services based upon applicationservice characteristics and priorities. This helps ensure a consistent,reliable user experience, even when there are multiple applicationservices and other activities consuming resources in the home. Theservice management center is not involved in these functions on areal-time basis; it does, however, establish (and update) the policiesand priorities that are configured and implemented in the gatewaydevice.

By distributing the application services to the edge of the novelarchitecture of this network, but retaining a central managementfeature, the disclosed architecture addresses network computing andtraffic capacity and latency challenges of providing applicationservices at the network level. The exemplary architecture thus resultsin significantly reduced latency and improved reliability.

Another aspect of the architecture is that it enables the managedservice provider to control hardware elements (endpoint devices) ofvarious types located on the other side of the Network Service ProviderDemarcation through the gateway, and to manage application servicesdirected to particular endpoint devices. The robustness of the gatewaydevice, coupled with the central management capabilities of the servicemanagement center, allow the system to register, configure, provision,and enable inter-communication among, a wide variety of endpointdevices, such as T, cell phone, radios, PC, and digital picture frames.Such a centralized management greatly reduces the burden on end users inmanaging their equipment or network. However, with this approach, it isrelatively simple for a service provider to adapt service to a newuser-premises technology.

Additional advantages and novel features will be set forth in part inthe description which follows, and in part will become apparent to thoseskilled in the art upon examination of the following and theaccompanying drawings or may be learned by production or operation ofthe examples. The advantages of the present teachings may be realizedand attained by practice or use of various aspects of the methodologies,instrumentalities and combinations set forth in the detailed examplesdiscussed below.

BRIEF DESCRIPTION OF THE DRAWINGS

The drawing figures depict one or more implementations in accord withthe present teachings, by way of example only, not by way of limitation.In the figures, like reference numerals refer to the same or similarelements.

FIG. 1 is a layered logical block diagram with arrows representing stepsof a sample logical flow, for an application client to access a specificmanaged application service, in a gateway device-service managementcenter type network configuration, and shows a first or Network ServiceProvider Demarcation at the network edge;

FIG. 2 is a high-level depiction of the logical architecture of thesoftware and hardware of a multi-services applications gateway device,together with a network service provider termination apparatus forbroadband connection to a wide area network, and shows the firstdemarcation as well as a second demarcation between the ApplicationService Provider and the User;

FIGS. 3A to 3C depict the software and hardware architectures of themulti-services applications gateway device;

FIG. 4 is a network diagram, depicting a gateway device, endpointdevices at the user premises, one or more wide area networks and aservice management center;

FIGS. 5A and 5B conceptually depict the demarcation in a storage mediathat provides isolation of downloaded service logic and associated datafor implementing services from service provider and/or downloadedcontent, from a user generated content;

FIG. 6 conceptually depicts a virtual hosting (space-sharing) serviceprovided by the gateway device;

FIG. 7 is a signal flow diagram;

FIGS. 8 and 9 are process flow diagrams, which illustrate operations forproviding backup services for files to a third party storage providerand peer gateway appliances;

FIG. 10 is a layered logical block diagram of one possible configurationfor service delivery to a client of an application within a userpremises based on a typical current network architecture; and

FIG. 11 is similar to FIG. 10 , but overlaid with arrows to show asample flow of logical steps taken by an Application Client to access aspecific managed Application Services in the typical current networkconfiguration.

DETAILED DESCRIPTION

In the following detailed description, numerous specific details are setforth by way of examples in order to provide a thorough understanding ofthe relevant teachings. However, it should be apparent to those skilledin the art that the present teachings may be practiced without suchdetails. In other instances, well known methods, procedures, components,and circuitry have been described at a relatively high-level, withoutdetail, in order to avoid unnecessarily obscuring aspects of the presentteachings.

The various technologies disclosed herein move application servicelogic, formerly resident in a network node, into a gateway device in thecustomer premises. The gateway device is implemented in such a manner asto offer its user many of the applications services, such as werepreviously offered from network-side servers, from the user premises. Alogical Network Service Provider Demarcation is formed at the edge ofthe wide area network at the user premises, that is to say between thewide area network and the equipment in the user premises. Theapplication service logic resides on the user premises side of thisfirst demarcation. The gateway device programming also defines a logicalservice provider-user demarcation between the user premises and theapplication service provider, referred to in later examples as theApplications Service Provider Demarcation. The application serviceprogramming resides on the service provider side of this seconddemarcation and can be controlled or managed by the application serviceprovider, typically by communications through the wide area network. Theuser's access to the programming and resources between the twodemarcations is limited. The application service programming onlyprovides a logical application service interface across the ApplicationsService Provider Demarcation, for delivery of one or more applicationservices to an endpoint device. The Applications Service ProviderDemarcation also provides a demarcation in accessibility to hardwareresources of the gateway device, whereby some hardware resources of thegateway device are on the service provider side of the logical serviceprovider-user demarcation and are inaccessible to an endpoint devicefrom the user side of that demarcation.

In a typical scenario, a network service provider takes responsibilityfor managing resources on the network side of the Network ServiceProvider Demarcation, leaving the user to manage everything on thepremises side of that first demarcation. However, in the gateway devicesdiscussed below, an application service provider takes responsibilityand controls/manages the software and hardware resources between the twodemarcations. This approach provides the application service providerwith management control over resources in the premises that deliver thatproviders' higher layer services, and the application service providercan relieve the end user of many of the burdens of managing customerpremises resources.

Examples of application services include one or more of: media delivery,content management, access control and use tracking, file sharing, andprotection and back-up services of both Internet/Web-generated digitalmedia content and user generated digital media content. The disclosedgateway device thus is configured and programmed to simplify variousaspects of managing the emerging home/business digital networksincluding the myriad of interconnected digital endpoint devicesassociated with the gateway device. The endpoint devices need not residewithin, or be located at, the premises to maintain their associationwith the gateway device. For many of the exemplary application services,the application service programming between the demarcations in thegateway device implement server functionality for interactivecommunication with client functionality of the endpoint devices.Application service functionality of the gateway device, as provided bythis client-server interaction, is enabled/disabled and configured bythe application service provider, via communications between the gatewaydevice and a service management center via the wide area network.

In this way, the gateway device and service management center movesubstantial functions performed by the typical network server into theuser premises by incorporating those functions between the twodemarcations at the gateway device, but in a way that allows for theserver functionality to be externally managed by the service managementcenter from the network side, which may be operated by a third-partyservice provider. In this exemplary architecture, both the serverfunctionality and the application services offered via the gatewaydevice may be managed by the service management center. Moreover, theserver function residing in the gateway device is not only located inthe premises but it now resides logically on the premises side of theNetwork Service Provider Demarcation and on the service provider side ofthe Applications Service Provider Demarcation. In the detailed examples,the gateway device and system architecture place a set of applicationservices on a tightly coupled (e.g. always-on or always-availablebasis), secure hardware platform that is externally managed.

Reference now is made in detail to the examples illustrated in theaccompanying drawings and discussed below. FIG. 1 is a high-leveldiagram of the architecture of a gateway-service management centernetwork, as well as the logical flow of how a specific ApplicationClient residing at a User Premises could interact with an ApplicationService in a gateway device that is being managed in the gateway-servicemanagement center network configuration. Heretofore, as described above,many application services that form part of the Application ServiceDelivery Platform were logically positioned at the AS Layer but on thenetwork side of the Network Service Provider Demarcation (see FIGS. 10and 11 ). FIG. 1 shows that, in the exemplary architecture, many ofthese application service functionalities that were previously offeredfrom network-side servers have now been moved across the Network ServiceProvider Demarcation and now logically reside at the AS Layer in theUser Premises Network, i.e., on the hardware components located, in theuser premises, such as, by example, a gateway device. In particular, theprogramming that implements application services is logically positionedon the user premises side of the Network Service Provider Demarcation.The application service on the user premises side that enforcesauthorization, authentication, configuration, or use of the respectiveservice via an endpoint device is logically depicted in FIG. 1 as theASE module in the AS Layer of the User Premises Network. The ASE modulemay also communicate via the wide area network with the ASM logicresiding in the service management center.

FIG. 1 thus depicts an approach in which the ASL and the ASE functionshave moved to the User Premises side. In the example of FIG. 1 , theapplication client would be implemented on an endpoint device, whereasother elements/functions to the right of the Network Service ProviderDemarcation are implemented in a gateway device. As discussed morebelow, the ASL and the ASE functions are implemented as high-levelserver type logic within the gateway device at a user premises. Hence,elements shown in FIG. 1 that may reside in the user premises gatewaydevice include the user premises-side network function or NF (switch,router or bridge) and the LAN termination for communication with theendpoint devices implementing the application client functions. Thus,with reference to FIG. 1 , the first interface, as described above, forenabling bi-directional network layer communications on the user's sideof the premises with one or more of the associated endpoint devicesresides at the NI Layer and provides the LAN Termination referencedtherein. FIG. 1 also depicts the WAN termination providing connectivityto the wide area network (network-side NF-Internet or private wide areadata network). The gateway device's second interface, as describedabove, for enabling bi-directional network layer communications for theassociated endpoint devices via a wide area network resides at the NILayer and provides the WAN Termination referenced therein. The gatewaydevice's second interface also enables bi-directional communicationsbetween it and the service management center via the WAN.

With reference to FIG. 1 , the core of the logical capacities of theservice management center resides on the Service Provider Network, andis depicted as the Application Service Management (ASM) portion of theApplication Service Delivery Platform in the AS Layer. The ASM functionis implemented in the service management center, which is external tothe user premises, and, perforce, on the network side of the NetworkService Provider Demarcation. The ASL and ASE functions maintain logicalconnectivity or interaction with the Application Service Management(ASM) function in the service management center, typically viacommunication through a wide area network. This logical connectivity isestablished through an always-on (or on an as needed, periodic basis),secure communication channel between the User Premises AS Layer (ASL andASE) and the Service Provider AS Layer (ASM) at the service managementcenter. The service management center and the communications of thecenter with one or more of the gateway devices provides aninfrastructure support and/or management of the application servicesoffered to endpoint devices and their users by the logic implemented inthe gateway device(s). Effectively, the ASD, considered in its entirety,extends all the way to the User Premises and traverses the Network andNetwork Service Provider Demarcation. The secure communications channelis established through the NF Layer and the NI layer.

The examples discussed herein also introduce a logical platformmanagement layer to the user premises-side, which allows for inter-layerallocation of local resources. This function guarantees access betweenthe Application Service Logic function on the user premises network andthe applications service management function in the service managementcenter by assuring that the local user premises hardware and softwaremodules are functioning at a required state (CPU and memory usage,bandwidth usage, QoS settings, etc.) in order for the ASL to have thenecessary resources to establish its required communications path to theASM.

The platform management layer is also responsible for implementing thatpart of the managed application services to be performed by the gatewaydevice. In that regard, the platform manager secures and manages theoverall hardware platform, given that in this scenario, the NF layer andthe AS layer reside on one hardware platform. This secure hardwareplatform provides a robust and secure operating environment for the ASLayer. So, to establish a secure and robust hardware operatingenvironment, the platform manager must interface with all the layersabove it and allow for bi-directional management information flow amongall of the functions. For example, if the Application Client is atelephony application and the desired application is call processing,the application must first connect to the LAN termination interface (1).Then a connection must be established to the AS Layer through the NFlayer (2). At this point the platform manager determines if there aresufficient resources available for this to take place on the routing andswitching modules and if there is not sufficient resources on either theLAN Termination interface or the NF layer functions, it would take thenecessary corrective measure to free up the required resources so thatthe application can execute properly (e.g. prioritize packets, throttlebandwidth, attempt to reduce noise on an RF interface, or free up timeslices on a TDMA interface such as MoCA). Once that is done, theconnection is established to the AS Layer (3), where the ASE and ASL,having been updated by the ASM in the network, respond instantaneouslyto the Application Client, completing the service request.

Application services represent functionalities, implemented in thehigher layer(s) of the protocol or logical stack above the networklayer(s) that may extend up to the top application layer (layer 7 of theOSI model). An application service, for example, provides applicationserver communication with a client functionality of one or more endpointdevices, for the respective service, communicated on top of networklayer communications through the interfaces. In the examples, theservices are provided on a subscription service basis to users at thepremises. Hence, the application service logic provides enforcementregarding authorization, authentication, configuration, and/or use ofthe respective service via the endpoint devices. The application serviceincludes service and feature functions, implemented and controlled bythe application service logic. Management of the application service isbased on communications with the service management center via the widearea network.

The illustrated architecture of the gateway device-service managementcenter network enables other features and capabilities that have notpreviously been available to the user. For instance, peer-to-peerapplication communication between or among gateways is possible withoutthe need to go through, or utilize resources at, an external servicemanagement center. Communications through the service management centerare also possible. In addition, given the considerable functionalitypresent in the gateway device, and its ability to manage the variousendpoint devices associated with it (as explained below), the userinterface with the gateway can be presented and utilized on the home TV.Additionally, information from other endpoint devices, such as the PC,network sources (such as an RSS (Really Simple Syndication) service),may now be overlaid on the TV screen so that, for example, PC messages,or weather information, can be viewed on the TV screen, and thefunctionality of the PC (or other home-networked endpoint devices) canbe accessed from the TV screen.

As shown by the discussion of FIG. 1 , application service programmingis logically positioned on a user premises side of a logical networkdemarcation forming an edge of the wide area network at the userpremises, that is to say on the user premises side of the NetworkService Provider Demarcation. The gateway device programming however,also defines a logical service provider-user demarcation between theuser premises and the application service provider, as will be describedin more detail with regard to FIG. 2 .

FIG. 2 depicts logical and physical elements as may be deployed at auser premises. At the Physical/Network layer shown therein, the drawingshows an example of user premises hardware components required fordelivering data services (i.e. Internet connectivity) along with aseparate, non-integrated managed hardware used in delivering a set ofmanaged application services (e.g. IM, VOD, IP telephony). The NetworkService Provider Wide Area Network Termination Apparatus (NSP-TA) allowsfor a typical termination of a Wide Area Network Services connection,such as DSL, Cable, Fiber, etc., by a network services provider. TheNSP-TA provides the WAN Termination in the NI Layer (FIG. 1 ). TheNSP-TA may be an existing user-premises device, provided by the carriersupplying network services to the premises. FIG. 2 also depicts theNetwork Service Provider Demarcation at the hardware level.

If configured as a standalone device, the NSP-TA device is required tohave its own CPU, Memory, physical interfaces and logic control. Inorder for Network Service Providers to deliver managed services, theytypically require a management element controlled by the CPU on theNSP-TA. To depict these logical elements residing on the hardwarecomponents, FIG. 2 includes a representation of the user premisesApplication Services Layer above the hardware layer. This layercorresponds to the AS Layer of FIG. 1 , but without reference to anylogical elements residing at the network services provider. Themanagement element, represented by the Network Service Provider ManagedApplication, allows the network service provider to determine the statusof the network hardware device and interfaces as well as maintain acertain degree of security enforcement at the customer premises.

As noted, the network service functionality is at the NI and NF Layersand generally does not extend to the AS Layer(s) beyond basicauthentication, authorization and state management. As with the hardwarecomponents, the logical elements also have a Network Service ProviderDemarcation as shown in FIG. 2 . On the WAN side, depicted as theNetwork Service Provider Managed Applications side, of the NetworkService Provider Demarcation, resides the applications that are managed,and under the exclusive control, of the network service provider (theNetwork Service Provider Logic). The User Interface to ManagedApplications is present on the LAN side of the Network Service ProviderDemarcation within the Application Services Layer. Within this interfaceresides programming and logic available to users other than the networkservice provider referred to as the Network User Controlled Logic. TheNetwork User Controlled Logic, which is depicted at the ApplicationServices Layer in FIG. 2 , provides a user interface to the NetworkService Provider Logic and, to the extent permitted by the NetworkService Provider Logic, interaction with or communication between theuser and network service provider through the Network User ControlledLogic and the Network Service Provider Logic, and to the NSP-TA hardwarecomponents. The Network User Controlled Logic allows for the User of thehardware to make certain, minimal programming changes relevant to theirpreferences (e.g., user name and password changes, local IP addresseschanges, local interface selection). All user devices typically can onlycommunicate with the NSP-TA through one or more of the User PremisesNetwork Interfaces. The user can modify the Network User ControlledLogic through the User Premises Network Interface. The Network ServiceProvider Demarcation is typically within the NSP-TA, logically dividingthe Network Service Provider Interface and the User Premises NetworkInterface modules. The network service provider does not have anyin-depth visibility or significant responsibility beyond the NetworkService Provider Demarcation.

In the example, the User Network and Application Delivery Apparatus(UNA-DA), shown on the right hand side of FIG. 2 , is a separate managedgateway device 10 that a managed-service provider (which may bedifferent than the network service provider) would control in deliveringa set of application services to the user premises. This device isrequired to have its own dedicated CPU, memory, logic control, as wellas its own dedicated set of interfaces. The UNA-DA includes one or moreNetwork Interfaces providing connectivity to the NSP-TA as well as touser premises endpoint devices. The interfaces provide the LANTermination functionality at the NI Layer (FIG. 1 ). One skilled in theart will readily recognize, however, that the physical connection thatconnects the UNA-DA to the NSP-TA also provides connectivity for theUNA-DA to the public (WAN side) network, and is the means by which theUNA-DA accesses the public network. The end point devices connected tothe LAN Interface are on the private (LAN) side of that interface. TheUNA-DA also includes a switch, router or bridge for the NF Layer.

Programming elements of the UNA-DA in the gateway device 10 are depictedat the Application Services Layer of the UNA-DA. Certain logicalelements, depicted as the Application Service Provider ManagedApplications and Platform in FIG. 2 , on which resides, inter alia, theprogramming corresponding to the ASL and ASE of FIG. 1 , are managed bythe managed application service provider's network control center, e.g.by the ASM through a wide area network (WAN) by means of a controlchannel to the Application Service Provider Managed Applications andPlatform. The Application Service Provider Managed Applications andPlatform includes a platform management logic module that, with otherprogramming in the Platform and the ASM, allows the managed applicationservice provider to control the hardware elements of the UNA-DA inaddition to any other relevant application services logic or hardwarethat may reside on the user premises. For example, this programmingenables a managed application service provider to control and manage thehardware elements on the UNA-DA to ensure proper use and allocation ofthe UNA-DA's processing, memory, storage, and bandwidth, to monitorlocal hardware security and generate needed alarms or protectionsequences, and to prioritize applications based on a set of establishedpolicies. The user would have control over specific parameters ofapplication services obtained through the UNA-DA, through the UserInterface and Platform to Managed Applications (User Controlled Logic)shown in FIG. 2 . These parameters allow the user to control the localbehavior of the interfaces and to configure the specific applications toaccommodate the user network as configured by the user and to implementthe user preferences for those applications.

Hence, FIG. 2 illustrates the logical architecture of the software andhardware of the UNA-DA in the form of a multi-services applicationsgateway device 10, together with a network service provider terminationapparatus for broadband connection to a wide area network in this caseimplemented by the NSP-TA. The gateway device 10 is an applicationdelivery apparatus, for delivering application services to endpointdevices using network layer communications through the networktermination apparatus and the wide area network. The drawing alsoillustrates relevant demarcations between functionalities of the gatewaydevice and termination, which delineate control/management access. Thearrangement of the ASL and ASE logic between the two demarcations andthe attendant logical demarcations in management access to the hardwareresources at the premises result in significant management control bythe application service provider and relieve the user of significantburdens in arranging and configuring the systems/services at thepremises. Hence, we will consider the demarcations and the resultingrelationships to the provider and the user at the various layers, inmore detail.

As outlined above, the logical Network Service Provider Demarcation isformed at the edge of the wide area network (WAN) at the user premises,that is to say between the WAN and the equipment in the user premises.The arrows at the bottom of FIG. 2 show that the area covered to theLEFT of the Network Service Provider Demarcation (as depicted by thelower arrow on the left of vertical plane) is the Network ServiceProviders responsibility. From the perspective of a network serviceprovider, anything to the RIGHT of that first demarcation (as depictedby the lower arrow on the right of the vertical plane) normally would bethe customer's responsibility. As shown, this separation at the firstdemarcation includes delineation among the hardware elements for theNSP-TA.

As shown in FIG. 2 , the application services layer also defines anApplication Service Provider Demarcation, which extends through thehardware modules on the “Hardware Components” plane as well as theprogramming in the logical application services plane. In this way, thedrawing depicts those modules that are under the responsibility ofApplication Service Provider (as depicted by the top middlebi-directional arrow). On the logic plane, the user can interact withthe managed services through the Application Services Interface function140, and the Application Service Provider can interact with the NetworkService Providers managed Applications through the Network ServiceProvider Managed Application function. This is an optional function butit helps show how the UNA-DA can interface with Network devices from anetwork services provider, and provide a unified application interfaceto both hardware elements (NSA-TA, UNA-DA). This management relationshipis represented by a dotted line on the logic layer between the PlatformManagement Logic module 110 and the network service provider managementapplication in the NSP-TA. In effect, the application service providercan “manage” the NSP-TA for the user, even though it is not theapplication service providers hardware. In the case where theapplication service provider is a network service provider as well (theNSP-TA is the application service providers own hardware), then it wouldwork in practically the same way.

FIG. 2 also shows how the programming effectively partitions thehardware at the Application Service Provider Demarcation, which givesthe application service provider the ability to provide a managedPeer-2-Peer private service that will enable that provider to use theUNA-DA for performing distributed computing, search, indexing, filebackup, sharing, etc., all managed and controlled by the providersservice management center.

The arrows at the top of FIG. 2 thus show the delineations in managementresponsibility created by the two logical demarcations. As at thebottom, the area covered to the LEFT of the Network Service ProviderDemarcation (as depicted by the upper arrow on the left of firstvertical plane) is the Network Service Provider's responsibility.Anything to the RIGHT of that second demarcation plane (as depicted bythe upper arrow on the right of the second vertical plane) would be thecustomers responsibility. However, the logic and hardware in the NSP-TAbetween the two vertical planes (as depicted by the upper arrow on theleft of second vertical plane) is the Application Service Provider'sresponsibility. As noted above, a logical interface may be provided tothe NSP-TA may enable the Application Service Providers to assume theuser's responsibility in managing the premises side of the NSP-TA asdepicted by the upper arrow on the right of the first vertical plane.

To identify the separation of, and distinguish between, the programmingand hardware components subject to control by the application serviceprovider and those subject to control by the user premises, FIG. 2identifies a dividing line across the logical elements of the UNA-DA,and a corresponding dividing line across hardware components, referredto as the Applications Service Provider Demarcation. The ApplicationsService Provider Demarcation is flexible in that it may extend logicallythrough the Application Services Interface (and, in a hardware context,through the Network Interface) to other devices that are under thelogical control of the Application Services Provider ManagedApplications and Platform, given that “services” are not restricted to aspecific hardware boundary.

There is no hard requirement for cross management between the UNDA-DAand the NSP-TA. Under this first scenario the user is responsible formaking the configuration changes in the specific user controlled logicmodules in order to get the two devices to communicate with each other.Optionally the two sub-systems can be combined together, eitherphysically in one hardware device, or logically as two separate hardwaredevices, but having one managed interface.

As noted, the two hardware regimes described above (NSP-TA and theUNA-DA) may be combined into one managed hardware platform and, thereby,replace the need for the user to have access to the User PremisesNetwork Interface with the logic residing in the Platform Managementlogic module of the Application Service Provider Managed Applicationsand Platform (compare to above-discussed FIG. 10 ). This would in effectreplace the “user” access with a managed “machine” access, for aspectsof the NSP-TA, as well as aspects of the application services offeredthrough the UNA-DA. Thus, the combination creates an integral gatewaydevice providing both network service and application services, undercentralized management. Although integrated, network interconnectfunctions of the NSP-TA may still be managed by the network serviceprovider, as in the example of FIG. 2 . Those skilled in the art willreadily see additional combinations and configurations for the hardwarecomprising the NSP-TA and the UNA-DA. For example, in a furtherembodiment, all the hardware dedicated to the Network Service ProviderInterface may reside and be integral with the hardware comprising theUNA-DA. Thus, the hardware for the WAN interface may reside on theUNA-DA.

The composition of the premises gateway device 10, earlier describedwith reference to FIG. 2 , is now described in greater detail withreference to that drawing together with FIGS. 3A-3C. FIG. 2 illustratesthe relationship of the demarcations to hardware and software of thegateway device 10 and an associated NSP-TA device providing the widearea network termination at the user premises. As shown in FIGS. 3A and3B, the gateway device 10 utilizes a layered architecture, which enablesthe encapsulation of similar functionality and the minimization ofdependencies between functions in different layers. FIG. 3A shows thelower portion of the layered architecture, and FIG. 38 shows the upperportion of the layered architecture. The completed set of layers can beconceptualized as if FIG. 3B was combined with FIG. 3A, with the layersof FIG. 3B above those of FIG. 3A. FIGS. 2, 3A and 3B also depictexemplary functionality (hardware and logical) resident in each of thelayers.

The layers include a hardware layer 102, and device driver software 104for allowing the processor to operate other hardware elements of thegateway device 10. FIG. 3C is a functional block diagram illustratinginterconnection of exemplary elements of the hardware layer 102.

The logical elements of the NI Layer residing on the gateway device 10are found in the Hardware Drivers 104, which govern the operation of theHardware Components 102. The processor runs an operating system shown atlayer 106, which plays a role in each of the NI, NF, AS and PlatformManagement Layers (FIG. 1 ). The layered architecture 100 also includessoftware for systems services 108 and for the platform management layershown at 110 in this drawing. Logical elements represented by the NFLayer depicted in FIG. 1 are comprised of elements from the systemservices 108. In a similar fashion, the Platform Management Layerdepicted in FIG. 1 is implemented in the exemplary architecture of FIGS.2, 3A and 3B by the platform modules 109 and the platform managementlayer 110.

Particular logical elements comprising the ASL and ASE functionalitiesof the AS Layer represented in FIG. 1 , and that reside on the gatewaydevice 10 (predominately in the Application Service Provider ManagedApplications and Platform of the UNA-DA shown in FIG. 2 ) are depictedin FIG. 3B, and comprise logical elements from each of servicesframework 120 and application services 130. The layered architecturefacilitates reuse or sharing of logic across the layers to provide amanaged service framework 120. The service management functionalityprovided by the framework 120 enables deployment of new services aspluggable modules comprising computer readable instructions, datastructures, program modules, objects, and other configuration data, in aplug and play fashion. The layered service architecture additionallyprovides the gateway device 10 with intra-process communication andinter-process communication amongst the many services and modules in theservice framework layer 120 that enables the provisioning, managementand execution of many applications and services 130, depicted e.g.services A, B . . . N at the gateway device 10. Additionally providedare the application service interfaces 140 that enable communicationsfrom user endpoint devices with service environments. In that regard,the interfaces 140 enable the application service logic 130 to act as anappropriate server with respect to client device application or servicefunctionality of the endpoint devices. The application serviceinterfaces 140 also enable corresponding interfaces for the applicationservices with aspects of service environments implemented outside theuser premises. In that regard, the interfaces 140 enable the applicationservice logic 130 to act as an appropriate client, for extending theapplication or service related communications to a server accessed viathe wide area network 99, such as a server of the service managementcenter 50. For example, the gateway device may appear as a SIP server toa SIP client in an end point device, e.g. for a VoIP telephone service;but the gateway device will appear as a SIP client with respect to somerelated functions provided by a server (such as a SIP directory server)provided by the service management center 50.

FIG. 2 thus depicts a high level service framework upon which are builtservices, e.g. downloaded via the service management center network 50and a wide area network as packages that are developed and offered by aservice entity for customers. These services may be offered as a part ofa default service package provisioned and configured at the gatewaydevice 10, or provisioned and configured subject to user subscriptionand may be added at any time as plug-in service modules in cooperationwith the service management center, as discussed later. It is understoodhowever, that while the gateway device 10 includes much of theintelligence or service logic for providing various services, it is alsopossible that for some services, some or all of service logic may residein the service management center network and/or with a third partyprovider.

As shown, the base support layer 102 comprises hardware componentsincluding a processor device 152, e.g. a system on chip centralprocessing unit (“CPU”) that includes processing elements, digitalsignal processor resources and memory. The CPU 152 is also coupled to arandom access memory or “RAM” (see FIG. 3C) and additionally,non-volatile hard drive/disk magnetic and/or optical disk memory storage154. Generally, the above-identified computer readable media providenon-volatile storage of computer readable instructions, data structures,program modules, objects, service configuration data and other data foruse by the gateway device. The non-volatile hard drive/disk magneticand/or optical disk memory storage 154 may be partitioned into a networkside which is the repository for storing all of the service logic anddata associated with executing services subscribed to by the user, and,is invisible to the user, and, a user side for storing user generatedcontent and applications in which the user has visibility. Although notshown, the CPU 152 may be coupled to a microcontroller for controlling adisplay device.

Additional hardware components include one or more Ethernet LAN and WANinterface cards 155, 156 (e.g. 802.11, T1, T3, 56 kb, X.25, DSL or xDSL)which may include broadband connections (e.g. ISDN, Frame Relay, ATM,Gigabit Ethernet, Ethernet over SONET, etc.), wireless connections, orsome combination of any or all of the above. The card 155 referred to asthe LAN interface card provides data communication connectivity withinthe user premises, essentially, for communication via a user premisesnetwork 60 with any endpoint devices operating within the premises. Thecard 156 referred to as the WAN interface card provides datacommunication connectivity for the gateway device 10 and endpointdevices communicating through the device 10, with the wide area IPnetwork 99. For additional or alternative customer premisescommunications, the hardware components 102 may also include one or moreUSB interfaces 158; and for additional or alternative communicationswith the wide area network, the hardware components may also include thePCMCIA EvDO interface card 160.

A data encryption/decryption unit 162 is additionally provided as partof the architecture for providing data security features. A watchdogtimer element or like timer reset element 164 is provided as is one ormore LED devices 166 for indicating status and other usable informationto users of the gateway device 10.

The gateway device provides an in-premises footprint enabling theservice connectivity and local management to client(s). Theimplementation of functions and the related control such as a router(with quality of service (QoS)), firewall, VoIP gateway, voice servicesand voice mail may be embodied and performed within the CPU 152.

The discussion of the gateway hardware layer above and the illustrationthereof in the drawings provides a high-level functional disclosure ofan example of the hardware that may be used in the gateway device. Thoseskilled in the art will recognize that the gateway device may utilizeother hardware platforms or configurations.

Continuing, as shown in FIG. 3A, the device driver layer 104 comprises amultitude of driver interfaces including but not limited to: a PCMCIAdriver 104 a, for enabling low level communication between the gatewayCPU 152 and the PCMCIA network interface card wireless interface, an IDEdriver 104 b for enabling low level communication between the gatewayCPU 152 and the local mass memory storage element, and LAN/WAN drivers104 c for enabling low level communication between the gateway CPU 152and the respective network interface cards 155 and 156. The exemplarydriver layer also includes an LED driver/controller 104 d for drivingLED(s) 166, a USB driver 104 e allowing CPU 152 to communicate via USBinterface 158, and an 802.11 b/g (or n) wireless network driver 104 ffor allowing the CPU 152 to communicate via the access point 62. Thedrivers provide the logical connectivity between the low level hardwaredevices 102 and the operating system 106 which controls the execution ofcomputer programs and provides scheduling, input-output control, fileand data management, memory management, and communication control andrelated services for the gateway device. With respect to the operatingsystem 106, the gateway computing may support any embedded operatingsystem, any real-time operating system, any open source operatingsystem, any proprietary operating system, or even any operating systemsfor mobile computing devices as long as the operational needs of theclient discussed herein below can be met. Exemplary operating systemsthat may be employed include Windows.RTM., Macintosh.RTM., Linux or UNIXor even an embedded Linux operating system. For instance, the gatewaydevice 10 may be advantageously provided with an embedded operatingsystem 106 that provides operating system functions such as multiplethreads, first-in first-out or round robin scheduling, semaphores,mutexes, condition variables, message queues, etc.

Built upon the system operating system 106 is a system services supportlayer 108 providing both client-like and server-like functions thatenable a wide range of functionality for the types of services capableof being managed by the gateway device 10. For instance, there isprovided a Dynamic Host Configuration Protocol (DHCP) client and serversoftware modules. The DHCP client particularly requests via a UDP/IP(User Datagram Protocol/Internet Protocol (e.g. lpv4, lpv6, etc.)configured connection information such as the IP address that thegateway device 10 has been dynamically assigned by a DHCP service (notshown), and/or any the subnet mask information, the gateway deviceshould be using. The DHCP server dynamically assigns or allocatesnetwork IP addresses to subordinate client endpoints on a leased, e.g.timed basis. A Virtual Private Network (VPN) client may communicate viaa proxy server in the service control network 50, according to a VPNprotocol or some other tunneling or encapsulation protocol. An SMPTclient handles incoming/outgoing email over TCP, in accordance with theSimple Mail Transfer protocol. A Network Time Protocol (NTP) (RFC 1305)generates and correlates timestamps for network events and generallyprovides time synchronization and distribution for the Internet. ADomain Name Server (DNS) client and server combination are used by theIP stack to resolve fully-qualified host or symbolic names, i.e. mappinghost names to IP addresses.

An HTTP(S) server handles secure Hypertext Transfer Protocol (HTTP)(Secure Sockets Layer) communications and provides a set of rules forexchanges between a browser client and a server over TCP. It providesfor the transfer of information such as hypertext and hypermedia, andfor the recognition of file types. HTTP provides stateless transactionsbetween the client and server.

A Secure File Transfer Protocol (SFTP) client and server combinationgovern the ability for file transfer over TCP. A SAMBA server is an opensource program providing Common Internet Files Services (CIFS)including, but not limited to file and print services, authenticationand authorization, name resolution, and service announcement (browsing).An EvDO/PPP driver includes a Point-to-Point Protocol (PPP) daemonconfiguration for wireless broadband services. A PPPoE (Point-to-PointProtocol over Ethernet) client combines the Point-to-Point Protocol(PPP), commonly used in dialup connections, with the Ethernet protocol;and it supports and provides authentication and management of multiplebroadband subscribers in a local area network without any specialsupport required from either the telephone company or an Internetservice provider (ISP). The gateway device 10 is thus adapted forconnecting multiple computer users on an Ethernet local area network toa remote site through the gateway and can be used to enable all users ofan office or home to share a common Digital Subscriber Line (DSL), cablemodem, or wireless connection to the Internet. A Secure Shell or SSHserver implemented with HTTP protocol provides network protocolfunctionality adapted for establishing a secure channel between a localand a remote computer and encrypts traffic between secure devices byusing public-key cryptography to authenticate the remote computer and(optionally) to allow the remote computer to authenticate the user.

Additionally provided as part of the system services layer 108 isintelligent routing capability provided by an intelligent router device185 that provides Quality of Service (QoS, guaranteed bandwidth)intelligent routing services, for example, by enforcing routing protocolrules and supporting unlimited multiple input sources and unlimitedmultiple destinations and, particularly, for routing communications tonetworked digital endpoint devices subordinate to the gateway. A centraldatabase server 183 handles all of the database aspects of the system.For example, the database server 183 maintains and updates registriesand status of connected digital endpoint devices, maintains and updatesservice configuration data, services specific data (e.g. indexes ofbacked-up files, other service specific indexes, metadata related tomedia services, etc.) and firmware configurations for the devices. Thedatabase server 183 may also store billing and transaction detailrecords and performance diagnostics. The database server logic 183 alsosatisfies all other database storage needs as will be described ingreater detail herein.

Referring back to FIGS. 2 and 3A, built on top of the system serviceslayer 108 is the platform module layer 109. The platform module layer109 provides a software framework for operating system andcommunications level platform functionality such as CPU management;Timer management; memory management functions; a firewall; a web wallfor providing seamless WWW access over visual displays via accesstechnologies enumerated herein, e.g. HTTP, SMS (Short Messaging Service)and WAP (Wireless Access Protocol); QoS management features, bandwidthmanagement features, and, hard disk drive management features. Thelayered architecture further provides a platform management layer 110 asshown in FIG. 3B, which together with the platform modules 109 implementthe platform management layer/logic discussed earlier (with regard toFIG. 1 ). In the layered architecture, the platform management layer 110(and elements shown above it in FIG. 38 ) is built upon the platformmodules 109.

The features/functions in the layer 110 include a platform managermodule which will implement unique rules based notification services. Onoperational failure, for example, when one of the components or servicesfails, the platform manager would detect this failure and takeappropriate action such as implement a sequence of rules to providenotification to a user. A scheduler module manages scheduled devicemaintenance, managing scheduled services, e.g. back-up services, etc.The layer 110 also includes a diagnostics module and a firmware upgradesmanagement module for managing firmware upgrades. A resource managementmodule manages system resources and digital contention amongst thevarious resources, e.g. CPU/Bandwidth utilization, etc. A displaymanagement module and a logger management module store and track gatewaylog-in activity of users and applications, e.g. voice call logs, at theuser premises. The platform management layer 110 in concert withresource and service management components enforces the separation ofnetwork side managed service control and user side delegations dependingupon service subscriptions and configurations. For example, the platformand resource management encompass rules and guidelines providedaccording to subscribed services that act to enforce, manage and controlinput/output operations, and use of hard drives space etc. A demarcationpoint, logically depicted as the Application Service ProviderDemarcation in FIG. 2 , is thus defined that provides a hard linebetween what is “owned by” the customer and what is “owned by” theapplication service provider.

The logical platform management layer 110 allows for inter-layerallocation of local resources. This function guarantees access betweenthe application service/management logic implemented at the higherlayers in the gateway device 10 and the applications service managementfunction in the service management center 50, by assuring that the localuser premises hardware and software modules are functioning at arequired state (CPU and memory usage, bandwidth usage, QoS settings,etc.). The platform manager is also responsible for implementing thatpart of the managed application services to be performed by the gatewaydevice. In that regard, the platform manager secures and manages theoverall hardware platform, given that in this scenario, the networkfunction layer and the application service layer reside on one hardwareplatform. This secure hardware platform provides a robust and secureoperating environment for the application services layer. So, toestablish a secure and robust hardware operating environment, theplatform management layer must interface with all the layers above itand allow for bi-directional management information flow among all ofthe functions.

Referring back to FIGS. 2 and 3B, built on top of the platformmanagement layer 110 is the Services Framework 120, which provides alibrary of application support service processes that facilitate datacollection and data distribution to and from the multimedia endpointdevices. The application support service processes include, but are notlimited to: an authentication manager for use in authenticating devicesconnected to the gateway device; a billing manager for collecting andformatting service records and service usage by endpoint devices, e.g.calls, back-up services etc.; a fault manager for detecting and managingdetermined system and/or service faults that are monitored and used forperformance monitoring and diagnostics; a database manager; a controlchannel interface via which the gateway initiates secure communicationswith the operations support infrastructure; a configuration manager fortracking and maintaining device configuration; a user manager; a servicemanager for managing service configuration and firmware versions forsubscribed services provided at the gateway device; and a statisticsmanager for collecting and formatting features associated with thegateway device. Statistics may relate to use of one or more services andassociated time-stamped events that are tracked.

Built on top of the Services Framework layer 120 is the ApplicationServices layer 130 providing library of user application services andapplication support threads including, but not limited to: file sharingfunctionality; backup services functionality; home storagefunctionality; network device management functionality; photo editingfunctionality; home automation functionality; media servicesfunctionality; call processing functionality; voice mail and interactivevoice response functionality; presence and networking functionality;parental control functionality; and intelligent ads managementfunctionality. The multi-services applications gateway 10 furtherprovides application service interfaces 140 that are used to enable avariety of user applications and communications modalities.

For instance, the SIP Interface 141 is an interface to the generictransactional model defined by the Session Initiation Protocol (SIP)that provides a standard for initiating, modifying or terminatinginteractive user sessions that involve one or more multimedia elementsthat can include voice, video, instant messaging, online games, etc., byproviding access to dialog functionality from the transaction interface.For instance a SIP signaling interface enables connection to a SIPnetwork that is served by a SIP directory server via a Session BorderController element in the service management center.

The Web Interface 142 enables HTTP interactions (requests and responses)between two applications. The Web services interface 149 provides theaccess interface and manages authentication as multi-services gatewaydevices access the service management center via web services. The IMInterface 144 is a client that enables the multi-services gateway device10 to connect to one or more specific IM network(s). As further shown inFIG. 3B, the UpNp (Universal Plug and Play) interface enablesconnectivity to other stand-alone devices and PCs from many differentvendors.

The XMPP interface 145 is provided to implement the protocol forstreaming (XML) elements via the gateway device 10, in order to exchangemessages and presence information in close to real time, e.g. betweentwo gateway devices. The core features of XMPP provide the buildingblocks for many types of near-real-time applications, which may belayered as application services on top of the base TCP/IP transportprotocol layers by sending application-specific data qualified byparticular XML namespaces. In the example, the XMPP interface 145provides the basic functionality expected of an instant messaging (IM)and presence application that enable users to perform the followingfunctions including, but not limited to: 1) Exchange messages with otherusers; 2) Exchange presence information with other devices; 3) Managesubscriptions to and from other users; 4) Manage items in a contact list(in XMPP this is called a “roster”); and 5) Block communications to orfrom specific other users by assigning and enforcing privileges tocommunicate and send or share content amongst users (buddies) and otherdevices.

As noted, FIG. 3C provides a functional block diagram of exemplaryelements of the hardware layer 102. For example, a system on a chipprovides the CPU 152 and associated system components. The CPU 152 isalso coupled to a random access memory (“RAM”) and flash memory. Thesystem on a chip also includes a hard drive controller for controlling ahard disk drive, and together the controller and drive form the harddisk example of the storage 154. An Ethernet switch and associated LANport(s) provide the Ethernet LAN interface 155; and the Ethernet switchand associated WAN port provide a landline implementation of the WANinterface 156L, for connection to a broadband modem or the likeimplementing the NSP-TA. The WAN interface may also be wireless, asimplemented at 156 w for example by a wireless WAN module and associatedantenna. An example of such an interface would be the EvDO interfacediscussed earlier. If the gateway device uses the wireless WAN interface156 w, there would be no separate NSP-TA.

In the example of FIG. 3C, a USB controller in the system on a chip andone or more associated USB ports provide the USB interface 158. The USBinterface 158 may provide an alternate in-premises data communicationlink instead of or in addition to the wired or wireless Ethernet LANcommunications. The system on a chip includes a security engine, whichperforms the functions of the data encryption/decryption unit 162.

The hardware layer 102 may also include an option module. The UNA-DAhardware components at layer 102 have multiple interfaces for connectionto such an option module. These interfaces, by way of example, could bea data bus (e.g. PCI, etc.), network interface (e.g. Ethernet (RJ45),MoCA/HPNA (Coax)) and Power feeds. The option module allows additionalfunctionality to be added to the base UNA-DA functionality of thegateway device. For example, this additional functionality could beeverything from support for a variety of extra Wide Area NetworkInterfaces (e.g. xDSL, DOCSIS, Fiber (PON), Cellular Packet, WIMAX,etc.), Media Processing (e.g. Cable TV termination, Digital VideoRecording, Satellite TV Termination, etc.), to Voice Processing (FXS,FXO, Speech Detection, Voice to Text, etc.). The option module may haveits own standalone CPU, Memory, I/O, Storage, or provide additionalfunctionality by its use of the CPU, Memory, I/O, and storage facilitiesoff of the main hardware board. The option module may or may not bemanaged directly by the Platform Management of the UNA-DA.

Those skilled in the art will recognize that functions of the servicemanagement center, which reside in the Application Service Managementnode on the Service Provider Network, as depicted in FIG. 1 , may beimplemented in a variety of different ways, on one or more computerhardware platforms connected to 10 gateway devices via a wide areanetwork. FIG. 4 depicts an example wherein the implementation is onInternet or other wide area IP network 99. The example uses adistributed processing approach, in which the elements/platformsimplementing the service management center are interconnected forcommunication and for wide area communication, and in this way, thoseelements form a network 50 for implementing the service managementcenter.

As shown in FIG. 4 , the service management center network, through thelogical capabilities earlier depicted in FIG. 4 as the ASM module of theASD Platform at the AS Layer, manages application services for a numberof gateway devices 10, 10.sub.1 . . . 10.sub.n located at various users'premises. These application services, shown as ASL and ASE in FIG. 1 ,implement their functionality within the Application Services Layer(FIG. 1 ), through programming that resides, at least in part, withinthe Application Service Provider Managed Applications and Platform ofthe UNA-DA (FIG. 2 ). As shown in FIG. 4 , secure connectivity to theservice management center network 50 is provided, in one embodiment, viaa WAN Termination interface, such as Ethernet WAN 53 over a broadbandconnection via the public Internet 99, or, for example, via a wirelessEvDO (Evolution Data Optimized) Internet data interface embodied as aPCMCIA (personal computer memory) wireless card 56. When the WANTermination interface 53 is used, for example, it may provideconnectivity to a broadband modem serving as the NSP-TA of FIG. 2 ,either as a separate unit or on a board included within the gatewaydevice 10. If the wireless WAN interface is used, there may be nophysical NSP-TA device, and the logic of the gateway device wouldimplement functions of the NSP-TA as well.

As will be described in greater detail herein below, the servicemanagement center 50 generally provides a communications and processinginfrastructure for supporting the variety of application services andrelated communications residing at the gateway devices 10, 10.sub.1 . .. 10.sub.n. In an exemplary embodiment, this infrastructure may beconfigured to provide a secure environment and may be IP-based.Preferably, this support architecture is designed for high availability,redundancy, and cost-effective scaling.

The secure platform for building and providing multiple applicationservices for digital endpoints associated with a gateway device requiresconnectivity between the gateway device 10 and each of a user's devices(referred interchangeably herein as “endpoint devices” or “digitalendpoint devices”). This connectivity may be provided by implementationof one or more USB ports (interfaces) 13, a wired Local Area Networkconnection such as provided by an Ethernet local area network (LAN)interface 16, or, a wireless network interface via a WiFi LAN accesspoint 62 provided, for example, in accordance with the I.E.E.E. 802.11b/g/n wireless or wireless network communications standard. Thesephysical interfaces provide the required network interconnectivity forthe endpoint devices to connect to the multiple application services.Although not shown in FIG. 4 , this connectivity between digitalendpoint devices and the gateway device may be accomplished by othermeans, including, by way of example, through of a virtual private areanetwork connection accessed through a WAN interface.

That is, the gateway device 10 interfaces with digital endpoint devicesincluding, but not limited to: a home automation networking device 20(e.g. X10, Z-Wave or ZigBee) for wired or wireless home networkautomation and control of networked home devices such as a switchcontroller 22, sensor devices 23, automatically controlled window blinds24, a controlled lighting or lamp unit 25 etc., individual or wired orwireless network of personal computing (PC) and laptop/mobile devices 30a, . . . , 30 c that serve as file sources, control points and hosts forvarious other client endpoints, one or more television display devices32 including associated set top boxes (STB) 35 a or digital mediaadapters (DMA) 35 b, one or more VoIP phone devices (e.g. SIP phones)40, or other devices (not shown) that convert IP interfaces to PSTN FXOand FXS interfaces.

As noted earlier, the gateway device 10 may provide an interface 35 b tothe Digital Media Adapter (DMA) for television (TV) 32, which enablesbidirectional wireline or wireless communication. This interfacesupports several functions for multiple services including, but notlimited to: media (e.g., video and music) by enabling the transfer ofmedia (e.g., video and music) to the TV; voice services, by providingfor Called Line ID and for voice mail control; and provide HomeAutomation Services including status and control of networked homeautomation devices. The DMA element 35 b converts audio and video(optionally) to a format suitable for a TV. In addition, the DigitalMedia Adapter 35 b may be capable of receiving context-sensitivecommands from a remote control device (not shown) and forwarding thosecommands to the gateway device 10. This enables the use of menus on theTV 32 for controlling application services and various featuresfunctions thereof, as offered by the gateway device 10. For example, theMedia Adapter/TV combination is able to provide the following featuresincluding, but not limited to: display of media; media controlfunctions, when enabled (FF, REW, STOP, PAUSE, etc.); display of CallingLine Identification (CLID); control of voicemail; picture viewing;control of home automation; and user functions for the gateway device10.

A Set Top Box 35 a as shown in FIG. 4 also may handle media formatconversion (for example NTSC to ATSC television RF signals), digitaldecryption and other DRM (digital rights management) functions, andVideo On Demand Purchases, etc. The Set Top Box/TV combination may thusenable, by way of example: Media format conversion (for example NTSC toATSC); decryption; other DRM functions (such as expiry of leases),prohibition of copying to digital outputs, function restriction, etc.;Video On Demand Purchases; and media control functions (e.g., FF, REW,STOP, PAUSE, etc.).

Whether provided by the DMA interface 35 b and the TV 32 or by theset-top-box 35 a and the TV 32, the communications to and from the TVprovide a user interface for interaction with the gateway device 10. Theprogramming of the gateway device supports, among other things, agraphical user interface (GUI) via the TV, sometimes referred to as the“ten-foot” interface.

With respect to PCs interfacing with the gateway device 10, PCs mayserve as, among other things, file sources, control points and hosts forvarious software clients. Thus, the PC programming may work inconjunction with the ASL and ASE programming of the gateway device.Together, the PC programming and the ASL and ASE programming provide amore comprehensive and robust user experience. The gateway device 10 mayfurther provide a bidirectional wireline or wireless interface 35 c to aPC device 30 b for supporting the transfer of media (e.g., video andmusic) to the computer for storage and viewing; for supporting voiceservices, e.g., by providing for calls from SIP soft clients; for filesharing, file back-up and home storage and home automation controlfunctions. The access point 62 offers wireless data communications witha PC 30 c. The gateway device interface through any PC may provide forthe bidirectional moving of files, and status and control for theendpoint devices, including for example, status and control of networkedhome automation devices. In addition, using the PC interface, users may,for example, share files on the gateway devices, back-up or transferfiles to the gateway devices or other storage; access personal page fornotifications, RSS, shared photos, voicemail, etc. In addition to the IMand SIP capabilities of the gateway device, as described more below, PCsmay also serve as a host for IM and SIP soft phone clients and otherclient devices. The client-server interaction of the PC with theapplication service logic of the gateway device 10 offers an alternativeGUI for at least some of the services. The PC based GUI is sometimesreferred to as the “two-foot” interface.

Although not shown in FIG. 4 , other digital endpoint devices for whichconnectivity may be established with the gateway device 10 include, butare not limited to: personal music or media players, hi-fi audioequipment with media streaming capability, game stations, Internet radiodevices, WiFi phones, WiFi or other wirelessly enabled digital cameras,facsimile machines, electronic picture frames, health monitors (sensorand monitoring devices), etc.

As described in greater detail herein, the gateway device 10 includesboth a hardware and software infrastructure that enables a bridging ofthe WAN and LAN networks, e.g. a proxy function, such that control ofany digital endpoint device at the premises from the same or remotelocation is possible via the gateway device 10 using, optionally, asecure peer and presence type messaging infrastructure or othercommunications protocols, e.g. HTTPS. For example, via any IM—capabledevice or client 80 a, 80 b respectively connected with an InstantMessaging (IM) or XMPP (Extensible Messaging and Presence Protocol)network messaging infrastructure, e.g. IM networks 99 a, 99 b such asprovided by Yahoo, Microsoft (MSN), Skype, America Online, ICQ, and thelike, shown for purposes of illustration in FIG. 4 , a user may accessany type of functionality at a subordinate digital endpoint device atthe premises via the gateway device 10 and service management center 50by simple use of peer and presence messaging protocols. In one exemplaryembodiment, a peer and presence communications protocol may be used suchas Jabber and/or XMPP. Particularly, Jabber is a set of streaming XMLprotocols and technologies that enable any two entities on the Internetto exchange messages, presence, and other structured information inclose to real time. The Internet Engineering Task Force (IETF) hasformalized the core XML streaming protocols as an approved instantmessaging and presence technology under the name of XMPP (ExtensibleMessaging and Presence Protocol), the XMPP specifications of which areincorporated by reference herein as IETF RFC 3920 and RFC 3921. Thus,the gateway device is provided with functionality for enabling a user toremotely tap into and initiate functionality of a digital endpointdevice or application at the premises via the IM-based messagingframework. In addition, the gateway device 10 and network connectivityto the novel service management center 50, provides, in a preferredembodiment, a secure peer and presence messaging framework, enablingreal-time communications among peers via other gateway devices 10.sub.1. . . 10.sub.n. For instance, the device 10 provides the ability toconstruct communication paths between peers with formal communicationsexchanges available between, for example, one gateway device 10.sub.1 ata first premises and a second gateway device 10.sub.n located at theremote premises. Thus, such an infrastructure provides for contentaddressing, enabling peers through remote gateway devices 10.sub.1 . . .10.sub.n. to supply and request content such as files, media content orother resources of interest to a community of interest.

As noted above, the novel system architecture allocates the logicalfunctionality of the ASD Platform (FIG. 1 ) between the gateway device10 and the service management center 50 within an environment thatenables communication and feedback at the AS Layer (FIG. 1 ) between thegateway device 10 and service management center 50. Thus, the gatewaydevice 10, when operable with the service management center 50, makespossible the management of services for the digital home and facilitatesthe easy addition of new services or modification of existing services.Such services may include, for example, facility management (homeautomation), media content downloading and Digital Rights Management(DRM), device updates, data backups, file sharing, media downloading andtransmission, etc., without the intermediary of a plurality of externalservice providers who may typically provide these individual servicesfor every digital endpoint device in the home or premises. Theprogramming for these services resides in the Application ServiceProvider Managed Applications and Platform of the UNA-DA (FIG. 2 ). Thatis, as earlier shown, the gateway device 10 is integrated with hardwareand software modules and respective interfaces that handle all aspectsof home automation and digital endpoint service and management for thehome in a manner without having to rely on external service providersand, in a manner that is essentially seamless to the user. This,advantageously is provided by the service management center 50 which isable to access regions of the gateway device 10 that are not accessibleto the user, e.g. for controlling the transport and storing of digitalcontent and downloading and enabling service applications and upgradesand providing largely invisible support for many tasks performed byusers.

For example, with the robust capabilities of the Application ServiceProvider Managed Applications and Platform (FIG. 2 ), the gateway device10 is capable of handling all aspects of the digital homecommunications, e.g. IP, voice, VoIP, phone connectivity. In thisexample, the service logic located and stored at the gateway device 10may provide soft-switch functionality for implementing call-processingfeatures at the premises (rather than the network) for voicecommunications, and enabling management of other service features to bedescribed. With the provision of central office type call services andother service features provided at the gateway devices 10.sub.1 . . .10.sub.n, a distributed soft-switch architecture is built. The ASMlogical functionality of the service management center 50, incooperation with the ASE logical functionality of the gateway device,may, among other things, provide, manage and regulate, for example,service subscription/registration, authentication/verification, keymanagement, and billing aspects of service provision, etc. With all ofthe service logic and intelligence residing at the gateway device, aservice provider can offer customers a broad spectrum of servicesincluding, but not limited to: media services, voice services, e.g.VoIP, automated file backup services, file sharing, digital photomanagement and sharing, gaming, parental controls, home networking, andother features and functions within the home or premises (e.g. homemonitoring and control). Users can access their content and many of thesolution's features remotely. Moreover, software updates for the in-homedevices that require updating are handled in an automated fashion by thesystem infrastructure. The service management center infrastructureadditionally provides a web interface for third-party service providersto round out the service solutions provided at the gateway device forthe premises. For example, a third-party service provider other than themanaged service provider associated with the service management centermay be allowed access through the infrastructure to particular endpointdevices to provide additional services such trouble shooting, repair andupdate services.

For the in-home services, the multi-services gateway device 10 connectsthe various service delivery elements together for enabling the user toexperience a connected digital home, where information from one source(for example, voicemail) can be viewed and acted on at another endpoint(for example, the TV 32). The multi-services gateway device 10 thushosts the various in-home device interfaces, and facilitates the movingof information from one point to another. Some of the in-home endpointdevice processing duties performed by the gateway device 10 include, butare not limited to: 1) detecting new devices and provide IP addressesdynamically or statically; 2) functioning as a (Network AddressTranslator) NAT, Router and Firewall; 3) providing a centralized diskstorage in the home; 4) obtaining configuration files from the servicemanagement center and configuring all in-home devices; 5) acting as aRegistrar for SIP-based devices; 6) receiving calls from and deliveringcalls to voice devices; providing voicemail services; 7) decrypting andsecurely streaming media having digital rights management (DRM)encoding; 8) distributing media to an appropriate in-home device; 9)compressing and encrypting files for network back-up; 10) backing-upfiles to the network directly from gateway device; 11) handling homeautomation schedules and changes in status; 12) providing in-homepersonal web-based portals for each user; 13) providing Parental ControlServices (e.g. URL filtering, etc.); 14) creating and transmittingbilling records of in-home devices including, recording and uploadingmulti-service billing event records; 15) distributing a PC client to PCsin the home, used in support of the various services such as monitoringevents or diagnostic agents; 16) storing and presenting games that usersand buddies can play; 17) delivering context-sensitive advertising tothe endpoint device; and, 18) delivering notifications to the endpointdevice; and, 19) enabling remote access through the web, IM client, etc.Other duties the gateway device 10 may perform include: servicemaintenance features such as setting and reporting of alarms andstatistics for aggregation; perform accessibility testing; notify aregistration server (and Location server) of the ports it is “listening”on; utilize IM or like peer and presence communications protocolinformation for call processing and file sharing services; receiveprovisioning information via the registration server; utilize a SIPdirectory server to make/receive calls via the SBC network elementto/from the PSTN and other gateway device devices; and download DRM andnon-DRM based content and facilitating the DRM key exchanges with mediaendpoints.

While the gateway devices 10 as described above are each equipped withvarious logic and intelligence for service features that enable thegateway devices to provide various integrated digital services to thepremises, as described herein with respect to FIG. 3 , the network-basedelements of the service management center 50 supports and managesmulti-services gateway devices, for instance, so as to control theaccessibility to functionalities and service features provisioned in thegateway devices and the ability to communicate with other gatewaydevices and various digital endpoint devices connected thereto. Theseelements that support and manage the gateway devices 10 comprise the ASMmodule described above with reference to FIG. 1 . These ASM elementsmay, for example, provide the necessary data to the ASE and ASL modulesso that they may carry out their respective functions, oversee theoverall integration and communication among all the modules and theservices that are managed by the ASM, manages the overall security andintegrity of the ASD, and maintains alarm, statistical, subscription andprovisioning data, and data necessary for the integration of servicesfrom third-party service providers, e.g., media content aggregators.

Examples of various ASM functionalities performed at the servicemanagement center 50, from the Service Provider Network regime, includebut are not limited to: service initialization of the gateway devices,providing security for the gateway devices and the network supportinfrastructure, enabling real time secure access and control to and fromthe gateway devices, distributing updates and new service options to thegateway devices, providing service access to and from the gatewaydevices and remote access to the gateway devices, but not limited tosuch. In support of these services, the service management center 50provides the following additional services and features: authentication;multi-service registration; subscription control; service authorization;alarm management; remote diagnostic support; billing collection andmanagement; web services access; remote access to gateway devices (e.g.via SIP or Internet/web based communications); reachability to accesschallenged gateway devices; software updates; service data distribution;location service for all services; SIP VoIP service; media services;backup services; sharing services; provisioning; gateway interfaces toother service providers (Northbound and peering); load balancing;privacy; security; and network protection.

The logical network architecture for the service management centernetwork 50 delivering these capabilities is illustrated and described ingreater detail in U.S. Provisional Application No. 60/882,865 Filed Dec.29, 2006 entitled “A MULTI-SERVICES APPLICATION GATEWAY AND SYSTEMEMPLOYING THE SAME,” and of U.S. Provisional Application No. 60/882,862Filed Dec. 29, 2006 entitled “SYSTEM AND METHOD FOR PROVIDING NETWORKSUPPORT SERVICES AND PREMISE GATEWAY SUPPORT INFRASTRUCTURE,” and thedisclosures of the service management center network and its operationsfrom those applications are entirely incorporated herein by reference.

With the gateway architecture implementing the Application ServiceProvider Demarcation (e.g. FIG. 2 and FIGS. 3A-3C), the demarcation inaccessibility to hardware resources of the gateway device 10 delineatesa portion of the storage accessible by a user via an endpoint devicefrom an application service provider portion of the storage containingthe application service programming and/or data of the applicationservice provider. For example, the user of an associated endpoint devicemay be able to store and retrieve data files in the user accessibleportion of the storage of the gateway device 10. The application serviceprovider, in turn, can control storage and retrieval of data files inthe application service provider portion via the of the wide areanetwork as well as installation and configuration of varioussoftware/firmware logic modules. However, as outlined above, the useraccess to the logic and resources between the two demarcations islimited. The application service programming only provides a logicalapplication service interface across the Applications Service ProviderDemarcation, for delivery of one or more application services to anendpoint device. The user can obtain and use the application service andits features but cannot access the underlying application service logicor its configuration data. For example, the user of the associatedendpoint device is prevented from accessing one or more of the datafiles in the application service provider portion of the storage media.For some service applications, the application service provider canallow storage and retrieval of data files in the application serviceprovider portion via the wide area network, for other gateway devices.Also, the logical location of the demarcation line separating theportions of the storage is controllable by the application serviceprovider, from the service management center 50, via the wide areanetwork 99 and the second interface. To illustrate these points, it maybe helpful to consider some examples.

FIG. 5A conceptually depicts the logical demarcation in a storage media,between a portion thereof accessible by the user and a portion thereofthat is accessible and controlled by the application service provider.In the example, the delineation provides isolation of downloaded servicelogic and associated data for implementing services from serviceprovider and/or downloaded content from a user generated content.

As shown in FIG. 5A, the gateway device 10 includes functionality forlogically combining the storage available from its own internal andattached hard drive(s) 154, with any Network Attached Storage (NAS)device 158 available via the local area network (and/or possibly via thewide area network) to create a single virtual file system that consumerscan use like a single drive. The gateway device 10 will automaticallydetect, mount and manage the connections to the NAS devices and add themto its own file system. Users of the gateway device 10 are thuspresented with a single consolidated storage device that they can accessjust like another drive on their PC. Users will not be exposed to theunderlying protocols and management features required to provide such afeature. Users no longer have to use each of the storage devicesseparately.

However, as further shown in FIG. 5A, a virtual demarcation 155 isenforced at the centralized disc storage device 154 of the gatewaydevice 10, e.g., which may comprise one or more physical hard drives.The demarcation 155 is essentially the extension of the ApplicationService Provider Demarcation (FIG. 2 ) that extends through the gatewaystorage 154. With respect to the storage 154, the virtual demarcation155 physically and logically isolates the storage partition or portion156 where service logic and associated data for implementing servicesfrom the application service provider and/or downloaded media contentcontrolled by that service provider are stored, from another partitionor portion 157 where user generated data, e.g., user files, is stored.Thus, the portion 156 of storage 154 belongs to the application serviceprovider and is accessible by the service management center 50. Theapplication service provider can use the portion 156 for receiving logicand intelligence for the device 10, and backed-up user files, all ofwhich is managed by the service control center 50 and enforced locallyat the ASE logic in the gateway device 10. However, the other portion157 of storage 154 is storage that is user accessible and includes auser accessible graphic user interface (GUI) which may be accessed by adigital endpoint device, e.g., a PC, programmed to enable visibility ifgranted to the user. Thus, the user is enabled to skew the demarcationpoint depending upon the amount of control granted or authorized to theuser according to subscribed features and service configurations.However, the demarcation location is controlled by the applicationservice provider. This separation within the gateway device 10 is anenabler for delivery of the service logic that resides on the device onthe network side of the virtual demarcation. That is, the serviceprovider offers all of its services upstream of this demarcation point;and the customer can choose which service is selected that is within thecontrol of the service provider's network. Hence, the physical size ofeach partition is dynamic. It becomes possible to determine partitionsizes on the hard disk at a low level, or to determine which file goesin which “virtual” partition, based on the type of file or a tag on thefile.

While the service center 50 is responsible for placement of servicemodules and data beyond the demarcation 155, the gateway device 10 isequipped with certain functional elements such as encryption techniques,local directory obfuscation techniques and local enforcement to preventuser visibility beyond the demarcation 155 that belongs to the serviceprovider unless the user is enabled with such visibility. Theintelligence and service logic that is on the gateway device 10 ismanaged by the service center 50 and provides the logic to limit useraccess.

FIG. 5B illustrates the virtual demarcation 155 within storage 154 ofthe gateway device 10 located on the customer premises, and thisdrawings provides examples of how the location of the demarcation 155 ismoveable. The logic allows the customer to skew the location of thedemarcation, albeit, within limits enforced by the logic managed by theapplication service provider. The provider also can adjust the locationof the demarcation within the storage 154 on gateway device 10. Thedemarcation within this device can occur on a physical storage medium,e.g., a hard disk drive 154 that has been sectored for different users,or in a virtual memory location, e.g. locations 155 a, 155 b or 155 c,based on the service levels being offered, e.g. service A, service B orservice C, respectively. This approach allows the customer moreflexibility in manipulating the service rendered and services offered bythe provider. By allowing the demarcation closer to the customer thisallows more control of features from the customer and allows the serviceprovider closer control of the customer infrastructure without owning itall. Thus, with this device in place, the new demarcation moves based onthe service.

For an example of demarcation control, if some data is required to bestored, e.g., a downloaded movie, the customer can store it locally,securely locally, or securely remotely. While it is the customer'sresponsibility to do storage locally and securely locally, with thevirtual demarcation, the service of providing locally secure data is nowpart of an offering of the service provider. While the data is still onsite, the data is under control of the service provider and followsservice agreements for that storage of data.

As another example of demarcation control, movies may be downloaded andstored at the service provider's side beyond the demarcation 155, asrequested by a user via a user interface through an endpoint devicecommunicating with the gateway device. This user interface, enabled viathe user side of the Application Service Provider Demarcation of thegateway device 10, is accessed through a PC, a TV, and cell phone. Afterauthentication, the user could select and prioritize movies to purchasefor example, in compliance with the media content service provider. Thechoice of interfaces and amount of visibility by endpoint devicesaccessing this user interface may be optimally designed from acontention standpoint from the perspective of controls, security,network service control manageability, and cost. A selected movie isdownloaded to the service center's portion 156 of the storage 154 asshown in FIG. 5A. Unless and until the user has purchased the movie forplayback via an authentication process, that user will be prevented fromaccessing the content. Otherwise, the user may initiate streaming of thecontent directly to a digital endpoint device, e.g., a television, orwill be granted permissions to download and play the movie according tothe subscription with the media content provider as managed by thegateway device. If the user has purchased the movie, the movie may betransferred physically to the user storage portion 157 of the storage154. Otherwise, the content may be temporarily tagged or copied, forlocal storage by the user at the user accessible portion of thedemarcation point for playback at the user endpoint device.

Another example of demarcation control is the manipulation of featuresfor a given service. Currently a subscription order is processed, andthese features are manipulated within the service provider's network andsent down to the customer for provisional changes to equipment at theservice center's side of the demarcation point. The location of thedemarcation can be adjusted to meet storage space needs on either orboth sides, as needed for various services offered to this user or evenservices provided to other users. Via a GUI established for the endpointdevice when connected with the gateway device 10, when authenticated,files may be unlocked so the customer may locally manipulate servicesbefore and after the Application Service Provider Demarcation, therebyvirtually shifting the point or location of the demarcation. Thus, avirtual demarcation allows the application service provider flexibilityin offering different services and features. Examples of relevantservices include, but are not limited to services such as: parentalcontrol, advertisement monitoring and replacement, home user habitmonitoring, home channel monitoring, and back-up services.

In one service example, the gateway device 10 and service managementcenter 50 provide a file management feature generally includingfunctionality that enables a user to back-up files or content to avirtual memory storage area provided in the gateway device 10, and thensubsequently forward the backed-up files to an external wholesaleservice provider providing the backup service. Thus, gateway storagedevice 10 provides the protected storage for user files and user contentat its side of the demarcation point in a two-stage storage process: 1)storing the content across the virtual demarcation point (partition);and then, encrypting the content; and, 2) dispersing the stored contentto other gateway devices, or at another storage location provided by theservice center or by a partnered third party back-up storage serviceprovider. This could be performed automatically, or on a scheduledbasis. In such an example, after the file is encrypted (and encrypt isan option, not a requirement), the file may be moved to the ServiceProvider side of the Demarcation or it may stay on the user side of theDemarcation. The precise position is an implementation detail given byway of example. Also, if moved, the file could be taken out of the onepartition (erased from the first partition), or it may merely “tagged”so that it has been “virtually” moved. These also are given by way ofexample, and those skilled in the art will recognize that otherprocedures may be used. The gateway device 10 knows where the pieceswill be stored, based on the service configuration and subscription.Backup may be on a central host operated by the application serviceprovider; or in an implementation discussed more below, the backup filesand/or portions thereof may actually reside in the service provider'sportion of storage in other gateway devices. The locations of devicesthat may back up content pieces are known at the network level, e.g.,hardware IDs of each of the other gateway devices are known based on theunique identity of the device, and the mappings of the IP addresses ofthe devices that change dynamically are known at location serversprovided by the service management center 50, so the location ofbacked-up content for a user is always known.

In a further aspect of the file-sharing service, the gateway device 10and service management center 50 may provide a hosted service-virtualspace on the centralized disk storage at the gateway device for users.Dedicated areas of user storage may be designated as sharable—includingapplication level sharing for any application that has data. As shown inFIG. 6 , this virtual storage area 159 may be combined from its internalhard disc storage with any network attached storage device located atthe network to create a single virtual file system that consumers canuse like a single drive.

FIG. 7 depicts a process 800 for back-up file services using a thirdparty storage provider according to one aspect of the invention. Asshown, in a first step 801, the device has been programmed to initiatean automatic back-up process at the PC endpoint. Then, at step 803, thefiles to be stored from a user device, e.g., a PC, are first compressed,encrypted and transferred to the gateway device 10. Referring back toFIG. 5A, this service may be configured to automatically implement atransfer 158 of user data or files from an attached user controlledportion 157 of storage 154 to be backed-up. Optionally, the gatewaydevice 10 may compress and encrypt the data. After any such processing,the transferred data or files are stored at the application serviceprovider side 156 of the virtual demarcation 155 (the encryptedpartition) where the service management center 50 has visibility. Again,this could be a physical partition or a “virtual partition” defined byfile information or some other method. Then, the device File Managermodule of the gateway device 10 starts the Backup Manager module, whichperforms the File Backup to the a Data Center which may be implementedas part of the service management center 50. A Backup Managerfunctionality in the service management center 50 checks to see if theuser is subscribed, and if so, proceeds to create an index of backupdata and obtain an access key from the service management center 50, asindicated at step 806. Once authorized, the back-up service key isprovided to the user's gateway device 10 at step 807. Then, in stage 2of the back-up process, as indicated at step 810, the backed-up filesare transferred with the service key to the third party storage provider96 via the wide area network. Then, once successfully stored at thethird party back-up storage service provider 96, a positiveacknowledgement is communicated from the service provider to the gatewaydevice 10 as indicated at step 812.

As controlled by the management service center 50, in an alternateembodiment, the encrypted content to be stored is transmitted to atleast one other gateway device 10, for storage at a location 156 beyondthe respective demarcation 155 for service provider storage in thestorage 154 of the other gateway device(s). If multiple other gatewaydevices 10 are used for this service, the user's data or files can beback-up in a distributed, safe and redundant manner on the provider'sstorage portion 156 of the other devices 10. That is, each file may bepartitioned into a plurality of pieces for further transfer or storagein a redundant and secure manner, e.g., and transferred to the serviceprovider portions 156 behind the virtual demarcations 155. These piecesmay then be encrypted and sent out externally for further storage,automatically, e.g., at time of log-in, on a scheduled basis, or, uponuser initiation.

The gateway device 10 and its interactions with various endpoint devicesand with the service management center 50 have been described withreference to diagrams of methods, apparatus (systems) and computerprogram products. It will be understood that elements and functionsillustrated in the diagrams, can be implemented by computer programinstructions running on one or more appropriately configured hardwareplatforms, e.g. to operate as a gateway device 10 or as one or moresystems implementing functions of the service management center 50.Hence, operations described above may be carried out by execution ofsoftware, firmware, or microcode operating on a computer otherprogrammable device of any type. Additionally, code for implementingsuch operations may comprise computer instruction in any form (e.g.source code, object code, interpreted code, etc.) stored in or carriedby any computer or machine readable medium.

Program aspects of the technology may be thought of a “products,”typically in the form of executable code and/or associated data forimplementing desired functionality, which is carried on or embodied in atype of machine readable medium. In this way, computer programinstructions may be provided to a processor of a general purposecomputer, special purpose computer, embedded processor or otherprogrammable data processing apparatus to produce a machine, such thatthe instructions, which execute via the processor of the computer orother programmable data processing apparatus, so as to implementfunctions described above.

Terms regarding computer or machine “readable medium” (or media) as usedherein therefore relate to any storage medium and any physical orcarrier wave transmission medium, which participates in providinginstructions or code or data to a processor for execution or processing.Storage media include any or all of the memory of the gateway device orassociated modules thereof or any of the hardware platforms as may beused in the service management center, such as various semiconductormemories, tape drives, disk drives and the like, which may providestorage at any time for the software programming. All or portions of thesoftware may at times be communicated through the Internet or variousother telecommunication networks. Such communications, for example, mayenable loading of the software from one computer into another computer,for example, from the updater 51 a hardware platform for a gatewaydevice 10 or from another source into an element of the servicemanagement center 50. Thus, another type of media that may bear thesoftware elements includes optical, electrical and electromagneticwaves, such as used across physical interfaces between local devices,through wired and optical landline networks and over various air-links.The physical elements that carry such waves, such as wired or wirelesslinks, optical links or the like, also may be considered as mediabearing the software. Hence, the broad class of media that may bear theinstructions or data encompass many forms, including but not limited to,non-volatile storage media, volatile storage media as well as carrierwave and physical forms of transmission media.

Those skilled in the art will recognize that the teachings of thisdisclosure may be modified, extended and/or applied in a variety ofways. An extension of the system architecture, for example, provides theability of various and disparate third-party application serviceproviders to provide multiple application services independently.Application services are managed by the “managed” service providerthrough the service management center 50, meaning, generally,authorizing, provisioning, and monitoring the usage of a particularapplication service. This can be accomplished in a variety of ways withvarying degrees of involvement of, or coordination with, the servicemanagement center. The service management center 50 could manage theseitems “soup-to-nuts” or have minimal involvement. For example, theservice management center 50 could deal directly with the third-partyservice provider to acquire application services at the request of auser and manage the delivery, authorization, usage-monitoring andupgrading of the application service. At the other end of the spectrum,the managed service provider may have arrangements with the third-partyapplication service provider by which orders or requests from the usersmay come directly to the third-party application service provider, andservices are delivered to the user by the third-party service providerwho in turn coordinates with the managed service provider to registerand monitor the particular application service placed in the gatewaydevice 10. It should be noted that this ability to manage applicationservices extends through the gateway device into the endpoint devicesregistered or associated with the gateway or network.

While the foregoing has described what are considered to be the bestmode and/or other examples, it is understood that various modificationsmay be made therein and that the subject matter disclosed herein may beimplemented in various forms and examples, and that the teachings may beapplied in numerous applications, only some of which have been describedherein. It is intended by the following claims to claim any and allapplications, modifications and variations that fall within the truescope of the present teachings.

1-20. (canceled)
 21. A non-transitory computer-readable storage mediumstoring instructions that, when executed by a communication devicelocated at a user premises, causes the communication device to perform aprocess comprising: wirelessly communicating with one or more endpointdevices at the user premises; communicating across a wide area networkwith a first service provider located externally to the user premises;enabling management and/or control of the communication device via atleast one of: an interactive voice response functionality, or agraphical user interface rendered on a display at the user premises;receiving a first voice command from a user for a service; verifying atleast one of a policy rule or a usage rule associated with the servicebased on the first voice command; and causing authentication and/orauthorization to be performed through one or more first communicationswith the first service provider to enable streaming of first media froma server associated with the first service provider to at least one ofthe endpoint devices, wherein the communication device is configured tocause authentication and/or authorization to be performed, based on asecond voice command from the user at the user premises, via one or moresecond communications with a second service provider located externallyto the user premises and from which the communication device isprogrammed to stream second media at the user premises independent fromthe first service provider.
 22. The non-transitory computer-readablestorage medium of claim 21, wherein the communication device furtherprovides at least one of: digital rights of media utilized by at leastone of the endpoint devices at the user premises; or context sensitiveadvertising for display by the at least one of the endpoint devices. 23.The non-transitory computer-readable storage medium of claim 21, whereinthe communication device stores executable instructions for controllingautomation of at least one of the one or more endpoint devices.
 24. Thenon-transitory computer-readable storage medium of claim 21, wherein thecommunication device is programmed for home automation of: at least oneof the endpoint devices located within the user premises, and the atleast one of the endpoint devices located remote from the user premises.25. The non-transitory computer-readable storage medium of claim 21,wherein the communication device is programmed to provide at least oneof: management of a video camera and associated video data capturedwithin the user premises, management of a sensor located at the userpremises, or management of a medical device at the user premises. 26.The non-transitory computer-readable storage medium of claim 21, whereinthe first media includes at least one of: auditory only media, or mediathat includes both auditory and visual components.
 27. Thenon-transitory computer-readable storage medium of claim 21, wherein:the causing authentication and/or authorization is performed through oneor more first communications in response to a first voice command; andthe causing authentication and/or authorization to be performed throughcommunications with the second service provider is in response to thesecond voice command, wherein the second voice command is different fromthe first voice command.
 28. The non-transitory computer-readablestorage medium of claim 21, wherein the communication device isprogrammed to perform at least one of speech detection or voice to texttranscribing.
 29. The non-transitory computer-readable storage medium ofclaim 21, wherein the one or more endpoint devices include a television.30. The non-transitory computer-readable storage medium of claim 21,further comprising using X10, Z-Wave, or ZigBee communications for thewirelessly communicating with one or more endpoint devices.
 31. Thenon-transitory computer-readable storage medium of claim 21, wherein thewireless communication with one or more endpoint devices includes WiFicommunications.
 32. The non-transitory computer-readable storage mediumof claim 21, wherein the first service provider is a media streamingservice provider.
 33. The non-transitory computer-readable storagemedium of claim 21, wherein the first voice command is verified asconforming with the at least one policy rule and/or usage ruleassociated with the service by determining that the voice command is formedia the user is authorized to access.
 34. A method performed by acommunication device, the method comprising: wirelessly communicatingwith one or more endpoint devices at a user premises; communicatingacross a wide area network with a first service provider locatedexternally to the user premises; enabling management and/or control ofthe communication device at the user premises via at least one of: aninteractive voice response functionality, or a graphical user interfacerendered on a display at the user premises; receiving a first voicecommand from a user for a service; verifying at least one of a policyrule or a usage rule associated with the service based on the firstvoice command; and causing authentication and/or authorization to beperformed through one or more first communications with the firstservice provider to enable streaming of first media from a serverassociated with the first service provider to at least one of theendpoint devices, wherein the communication device is configured tocause authentication and/or authorization to be performed, based on asecond voice command from the user at the user premises, via one or moresecond communications with a second service provider located externallyto the user premises and from which the communication device isprogrammed to stream second media at the user premises independent fromthe first service provider.
 35. The method of claim 34, wherein thefirst voice command is verified as conforming with the at least onepolicy rule and/or usage rule associated with the service by determiningthat the first voice command is for media that the user is authorized toaccess.
 36. The method of claim 34, wherein the graphical user interfaceis rendered on a mobile phone.
 37. The method of claim 34, wherein thecommunication device stores one or more executable streaming programs.38. The method of claim 34, wherein the communication device isprogrammed to store independently executable media streamingapplications.
 39. The method of claim 34, further comprising storing amedia streaming application on the communication device, wherein themedia streaming application is managed by the first service providerthrough one or more software updates provided by the first serviceprovider.
 40. A communication device, comprising: one or moreprocessors; and one or more memories storing instructions that, whenexecuted at a user premises by the one or more processors, cause thecommunication device to perform a process comprising: wirelesslycommunicating with one or more endpoint devices at the user premises;communicating across a wide area network with a first service providerlocated externally to the user premises; enabling management and/orcontrol of the communication device via at least one of: an interactivevoice response functionality, or a graphical user interface rendered ona display at the user premises; receiving a first voice command from auser for a service; verifying at least one of a policy rule or a usagerule associated with the service based on the first voice command; andcausing authentication and/or authorization to be performed through oneor more first communications with the first service provider to enablestreaming of first media from a server associated with the first serviceprovider to at least one of the endpoint devices, wherein thecommunication device is configured to cause authentication and/orauthorization to be performed, based on a second voice command from theuser at the user premises, via one or more second communications with asecond service provider located externally to the user premises and fromwhich the communication device is programmed to stream second media atthe user premises independent from the first service provider.
 41. Thecommunication device of claim 40, wherein the process includes verifyingthe first voice command conforms with the at least one policy ruleand/or usage rule associated with the service by determining that thefirst voice command is for media that the user is authorized to access.42. The communication device of claim 40, wherein the device on whichthe graphical user interface is rendered is a mobile phone of the user.43. The communication device of claim 40, wherein the process includesstoring one or more streaming programs on the communication device. 44.The communication device of claim 40, wherein the process includesstoring a media streaming application on the communication device,wherein the media streaming application is managed by the first serviceprovider through one or more software updates provided by the firstservice provider.